/*
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

namespace java org.apache.aurora.gen.test
namespace py gen.apache.aurora.test

// Test data for Thrift interface definition for the Twitter Mesos Scheduler.

// Test data for job path identifiers.
const set<string> VALID_IDENTIFIERS = ["devel",
                                       "dev-prod",
                                       "Dev_prod-",
                                       "deV.prod",
                                       ".devprod.."]

const set<string> INVALID_IDENTIFIERS = ["dev/prod",
                                         "dev prod",
                                         "/dev/prod",
                                         "///",
                                         "new\nline",
                                         "    hello world."]


// Valid cron schedules (taken from a list of cron schedules running at Twitter).
const set<string> VALID_CRON_SCHEDULES = [
    "25 */2 * * *",
    "05 */1 * * *",
    "5 */4 * * *",
    "42 * * * *",
    "30 07 * * *",
    "28 23 * * 3",
    "11 * * * *",
    "23 */2 * * *",
    "10,40 8,9,10,11 * * *",
    "22 * * * *",
    "15 8,13,18 * * *",
    "15,45 * * * *",
    "0 */1 * * *",
    "02 6 * * *",
    "1 * * * *",
    "37 */1 * * *",
    "0 0/3 * * *",
    "19 12,23 * * *",
    "41 4,12,20 * * *",
    "16 09,16 * * *",
    "17 1,9,17 * * 0",
    "*/1 * * * *",
    "0 17,23 * * *",
    "42 18,21,23,3,7 * * *",
    "20 12 * * *",
    "3,13,23,33,43,53 * * * *",
    "50 07 * * *",
    "00 22 * * 0,2,5",
    "6 2,10,18 * * *",
    "59 */4 * * *",
    "17 00 * * *",
    "10 06 * * *",
    "13,28,43,58 * * * *",
    "0 */3 * * *",
    "0 2 * * *",
    "30 * * * *",
    "0 8,11,14,17,20 * * *",
    "10 * * * *",
    "30 06 * * *",
    "23 * * * *",
    "30 9 * * *",
    "02 6,10,14 * * *",
    "19 * * * *",
    "7 12 * * *",
    "0 * * * *",
    "*/10 * * * *",
    "30 14,16,18,20,22 * * *",
    "0,10,20,30,40,50 * * * *",
    "30 0,12 * * *",
    "45 22 * * *",
    "20 */3 * * *",
    "14 9,21 * * *",
    "*/20 * * * *",
    "1 7,15,23 * * *",
    "*/2 * * * *",
    "25 14 * * *",
    "0 */6 * * *",
    "30 6 * * *",
    "0 16,20,0,3,6 * * *",
    "5,15,25,35,45,55 * * * *",
    "22 3,15 * * *",
    "0 1,3,5,7,9,11,13 * * *",
    "14 8,17 * * *",
    "30 21 * * 0,2,5",
    "44 23 * * *",
    "35,50 * * * *",
    "10 01,07,13,19 * * *",
    "1 14 * * *",
    "29 9,16,22 * * *",
    "12 2 * * *",
    "0 22 * * *",
    "1 */6 * * *",
    "0 20 * * 4",
    "0 9,12,15,18,21 * * *",
    "30 2 * * *",
    "15 * * * *",
    "0 20 * * 1",
    "0 */12 * * *",
    "17 0,5,17,20 * * *",
    "0 20 * * *",
    "30 18,23 * * MON-FRI",
    "0 22 * * 1",
    "35 23 * * *",
    "55 03 * * *",
    "23 3,15,22 * * *",
    "20 13 * * *",
    "30 11 * * *",
    "*/5 * * * *",
    "*/6 * * * *",
    "0 2,4,6,8,10,12 * * *",
    "10 02,08,12 * * *",
    "0 11 * * *",
    "05 02,08,12 * * *",
    "10 11 * * *",
    "22 */6 * * *",
    "00 08 * * *",
    "0 2 1 * *",
    "30 19 * * 1,4",
    "0 */4 * * *",
    "10,30,50 * * * *",
    "22 22 * * *",
    "00 11 * * *",
    "29 16,17,18,22 * * *",
    "30 22 * * *",
    "05 * * * *",
    "0 23 * * 3",
    "15 */12 * * *",
    "30 19 * * 2,5",
    "*/30 * * * *",
    "22 6,18 * * *",
    "0 5 * * *",
    "15 8 * * 1,3,5",
    "0 8 * * *",
    "10 0 * * *",
    "40 11 * * *",
    "0 0 * * 1",
    "17 2,4,11,18 * * *",
    "30 0,8,16 * * *",
    "27 8,20 * * *",
    "0 0 * * *",
    "20 18 * * 2,4,6",
    "15 11 * * 2,6",
    "0,15,30,45 * * * *",
    "45 * * * *",
    "36 * * * *",
    "45 17 * * 0,2,4",
    "0 */2 * * *",
    "12 3,15,22 * * *",
    "2,7,12,17,22,27,32,37,42,47,52,57 * * * *",
    "0 23 2-31 * *",
    "10 16 * * *",
    "3 * * * *",
    "42 8,20 * * *",
    "0 15,19,23,2,5 * * *",
    "30 10 * * *",
    "2 2 * * *",
    "0 12 * * *",
    "15 17 * * *",
    "0 7 * * *",
    "1 2 * * *",
    "30 19 * * 0,3",
    "15 10 * * 2,6",
    "55 */1 * * *",
    "15 */4 * * *",
    "0 3,6,9,12,15,18,21 * * *",
    "11 0 * * *",
    "0 6 * * *",
    "0 3 * * *",
    "20 7,12,17 * * *",
    "21 * * * *",
    "58 * * * *",
    "10 02,08,14,20 * * *",
    "0 1,2,3,4,5,6,7,8,9,10,11,12,13 * * *",
    "50,59 * * * *",
    "30,45 18 * * 1",
    "0 1 * * *",
    "7 * * * *",
    "0 14 * * *",
    "09 22 * * *",
    "00 17 1-3,5-31 * *",
    "17 1,9,17 * * 1-6",
    "45 */4 * * *",
    "20 2,12,22 * * *",
    "15 3 * * *",
    "0 3 1 * *",
    "42 10 * * *",
    "12 7 * * *",
    "1,31 * * * *",
    "00 01 * * *",
    "0 9 1 * *",
    "50 */4 * * *",
    "43 * * * *",
    "10,40 9,10,11,12 * * *",
    "35 * * * *",
    "8 1,9,17 * * *",
    "45,54 * * * *",
    "49 6,18 * * *",
    "25 12,18,23 * * *",
    "20 18 * * 1,3,5",
    "45 17 * * 2,4",
    "0 17 * * *",
    "30 */6 * * *",
    "52 0,6,12,18 * * *",
    "*/15 * * * *",
    "1-56/5 * * * *",
    "0 2,3,4,5,6,7,8,9,10,11,12,13 * * *",
    "12 * * * *",
    "*/3 * * * *",
    "*/4 * * * *",
    "3 1,9,17 * * *",
    "00 14 * * *",
    "10 05 * * *",
    "8 21 * * *",
    "0 13 * * 2",
    "0 13 * * 3",
    "0 19 * * *",
    "0 21 * * *",
    "23 */4 * * *",
    "10 3,11,19 * * *",
    "* * * * *",
    "30 14 * * *",
    "03,18,33,48 * * * *",
    "0 11,23 * * *",
    "30 20 * * 0,2,5",
    "30 02,08,12 * * *",
    "45 1,3,5,7,9,11,13,15,17,19,21,23 * * *",
    "7 */2 * * *",
    "30 16 * * *",
    "5 * * * *",
    "04 06,12,18,23 * * *",
    "00 */2 * * *",
    "00 06,15 * * *",
    "35 */2 * * *",
    "1 5,13,21 * * *",
    "47 */2 * * *",
    "10 21 * * *",
    "00 21 * * *",
    "26 2,6,10,14,18,22 * * *",
    "00 11 * * 0,2,5",
    "0 18,22 * * MON-FRI",
    "00 21 * * 0,2,5",
    "0 17-19 * * 1",
    "15 9 * * 1,3,5"]
